LK

PrecisionPro Multiplayer Features

Finished

This game was developed as part of a one-year university project in which we created an aim trainer. My responsibilities included material creation, database integration, and the complete networking and multiplayer implementation.

Core systems I built included:

  • A network-driven state machine that responds to conditions such as local client state changes, client connections/disconnections, netcode role assignment, and real-time network updates. It also supports relay-based lobby creation and Unity’s anonymous sign-in for frictionless matchmaking.
  • A popup manager for displaying in-game messages. Dismissed popups are stored for later reuse to reduce asset creation overhead.

The gameplay loop is straightforward while retaining the “aim trainer” feel: each game session supports one host and one client. Once both players are connected, the game starts, and each player must shoot all orbs in their arena. Destroyed orbs spawn in the opponent’s arena. The player who clears their arena first wins. This process repeats until a player leaves; if the host leaves, the relay session is closed.

Planned improvements that did not make it into the final version:

  • A ready-up system for smoother game starts
  • Improved popup placement
  • Object pooling for orbs to optimize spawn performance

Unfortunately, I cannot share the source code for this project publicly, as it originated as a university project. While an Itch.io version exists, I no longer have access to update it, which means it remains outdated and lacks all the features showcased here on this page.